VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "CleanBend"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'
'   Copyright (c) 2006, Intergraph Corporation. All rights reserved.
'
'   CleanBend.cls
'   ProgID:         SP3DHCleaningBend.CleanBend
'   Author:         KKK
'   Creation Date:  Thursday, Jan 19 2006
'   Description:
'       This class module is the place for user to implement graphical part of VBSymbol for this aspect.
'       HVAC Cleaning Bend. BBKCU 90 Deg.
'   Symbol Taken from the http://www.lindab.com/Sweden/products/pdf/vent_eng/kapitel/eng_safe.pdf
'
'   Change History:

'  08.SEP.2006     KKC  DI-95670  Replace names with initials in all revision history sheets and symbols
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Option Explicit

Private Const MODULE = "CleanBend:"  'Used for error messages
Private m_oSymbolHelper As IJSymbolHelper
    
' Declaration of the User Symbol Services interface
Implements IJDUserSymbolServices

Private Sub Class_Initialize()
    Const METHOD = "Class_Initialize:"
    On Error GoTo Errx
    
    Set m_oSymbolHelper = New SymbolServices
    m_oSymbolHelper.ProjectName = "SP3DHCleaningBend"
    m_oSymbolHelper.ClassName = "CleanBend"
    '    Width   BWidth  Length  BLength InsulationThickness

' Inputs
    m_oSymbolHelper.NumInputs = 5
    m_oSymbolHelper.AddInputDef 1, "Width", "Width", 0.6
    m_oSymbolHelper.AddInputDef 2, "BWidth", "Brance Width", 0.35
    m_oSymbolHelper.AddInputDef 3, "Length", "Length", 0.25
    m_oSymbolHelper.AddInputDef 4, "BLength", "Branch Length", 0.15
    m_oSymbolHelper.AddInputDef 5, "InsulationThickness", "Insulation Thickness", 0.025
        
' Outputs
    m_oSymbolHelper.NumOutputs = 8
    m_oSymbolHelper.AddOutputDef 1, "Elbow", "Elbow Body", 1
    m_oSymbolHelper.AddOutputDef 2, "HVACNoz1", "Nozzle 1", 1
    m_oSymbolHelper.AddOutputDef 3, "HVACNoz2", "Nozzle 2", 1
    m_oSymbolHelper.AddOutputDef 4, "HVACNoz3", "Nozzle 3", 1
    

'Insulation Aspect
    m_oSymbolHelper.AddOutputDef 5, "ObjElbowIns", "Elbow Insulation", Insulation
    m_oSymbolHelper.AddOutputDef 6, "HVACNoz1Ins", "Nozzle 1 Insulation", Insulation
    m_oSymbolHelper.AddOutputDef 7, "HVACNoz2Ins", "Nozzle 2 Insulation", Insulation
    m_oSymbolHelper.AddOutputDef 8, "HVACNoz3Ins", "Nozzle 3 Insulation", Insulation
' Aspects
    m_oSymbolHelper.NumAspects = 2
    m_oSymbolHelper.AddAspectDef 1, "SimplePhysical", "SimplePhysical", SimplePhysical
    m_oSymbolHelper.AddAspectDef 2, "Insulation", "Insulation", Insulation
    
    Exit Sub
Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Sub

Private Sub Class_Terminate()
    
    Set m_oSymbolHelper = Nothing

End Sub

'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'
'NOTE: The code below this line was generated by the Symbol Wizard and should not be modified
'
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Public Function IJDUserSymbolServices_InstanciateDefinition( _
                ByVal CodeBase As String, _
                ByVal defParameters As Variant, _
                ByVal ActiveConnection As Object) As Object
    
' This method is in charge of the creation of the symbol definition object
    Const METHOD = "IJDUserSymbolServices_InstanciateDefinition:"
    On Error GoTo Errx
    
    Set IJDUserSymbolServices_InstanciateDefinition = m_oSymbolHelper.InstanciateDefinition(CodeBase, defParameters, ActiveConnection)
    Exit Function

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Function

Public Function IJDUserSymbolServices_GetDefinitionName(ByVal definitionParameters As Variant) As String
    Const METHOD = "IJDUserSymbolServices_GetDefinitionName:"
    On Error GoTo Errx
    
    IJDUserSymbolServices_GetDefinitionName = m_oSymbolHelper.ProjectName + "." + m_oSymbolHelper.ClassName
    Exit Function
    
Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Function

Public Sub IJDUserSymbolServices_InitializeSymbolDefinition(ByRef pSymbolDefinition As IJDSymbolDefinition)
    
    Const METHOD = "IJDUserSymbolServices_InitializeSymbolDefinition:"
    On Error GoTo Errx
   
    m_oSymbolHelper.InitializeSymbolDefinition pSymbolDefinition
    Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Sub

Public Sub IJDUserSymbolServices_InvokeRepresentation(ByVal sblOcc As Object, _
                    ByVal repName As String, _
                    ByVal outputcoll As Object, _
                    ByRef arrayOfInputs())
    
    Const METHOD = "IJDUserSymbolServices_InvokeRepresentation:"
    On Error GoTo Errx
    
    m_oSymbolHelper.InvokeRepresentation sblOcc, repName, outputcoll, arrayOfInputs
    Exit Sub

Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Sub

Public Function IJDUserSymbolServices_EditOccurence(ByRef pSymbolOccurence As Object, ByVal transactionMgr As Object) As Boolean
    Const METHOD = "IJDUserSymbolServices_EditOccurence:"
    On Error GoTo Errx
    ' The definition uses the generic EditOccurrence command
    IJDUserSymbolServices_EditOccurence = False
    Exit Function
    
Errx:
    Err.Raise Err.Number, Err.Source & " " & METHOD, Err.Description, _
        Err.HelpFile, Err.HelpContext
End Function
